<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IgH EtherCAT Master: slave.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IgH EtherCAT Master
   &#160;<span id="projectnumber">1.5.2</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('slave_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">slave.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>EtherCAT slave methods.  
<a href="#details">More...</a></p>

<p><a href="slave_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a471be4a7bc0d3a20a083157b72a41c67"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a471be4a7bc0d3a20a083157b72a41c67">ec_slave_sii_string</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, unsigned int index)</td></tr>
<tr class="memdesc:a471be4a7bc0d3a20a083157b72a41c67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the string list for an index.  <a href="#a471be4a7bc0d3a20a083157b72a41c67">More...</a><br /></td></tr>
<tr class="separator:a471be4a7bc0d3a20a083157b72a41c67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa689baba7cb590080c92bcf5a851739"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#aaa689baba7cb590080c92bcf5a851739">ec_slave_init</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *master, <a class="el" href="globals_8h.html#ad1a2101422888687598d7e1a630c6343">ec_device_index_t</a> dev_idx, uint16_t ring_position, uint16_t station_address)</td></tr>
<tr class="memdesc:aaa689baba7cb590080c92bcf5a851739"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave constructor.  <a href="#aaa689baba7cb590080c92bcf5a851739">More...</a><br /></td></tr>
<tr class="separator:aaa689baba7cb590080c92bcf5a851739"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35196c41a9d7b6a559c23d805690470d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a35196c41a9d7b6a559c23d805690470d">ec_slave_clear</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave)</td></tr>
<tr class="memdesc:a35196c41a9d7b6a559c23d805690470d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Slave destructor.  <a href="#a35196c41a9d7b6a559c23d805690470d">More...</a><br /></td></tr>
<tr class="separator:a35196c41a9d7b6a559c23d805690470d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c51205f3e69c449d29acf98f607f92d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a3c51205f3e69c449d29acf98f607f92d">ec_slave_clear_sync_managers</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave)</td></tr>
<tr class="memdesc:a3c51205f3e69c449d29acf98f607f92d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the sync manager array.  <a href="#a3c51205f3e69c449d29acf98f607f92d">More...</a><br /></td></tr>
<tr class="separator:a3c51205f3e69c449d29acf98f607f92d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6aa74f1d2d7abaa28ae2e0c19a1aa176"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a6aa74f1d2d7abaa28ae2e0c19a1aa176">ec_slave_set_state</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, <a class="el" href="globals_8h.html#a0e9c38c7520909d649fac451046dcde0">ec_slave_state_t</a> new_state)</td></tr>
<tr class="memdesc:a6aa74f1d2d7abaa28ae2e0c19a1aa176"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the application state of a slave.  <a href="#a6aa74f1d2d7abaa28ae2e0c19a1aa176">More...</a><br /></td></tr>
<tr class="separator:a6aa74f1d2d7abaa28ae2e0c19a1aa176"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a040121dc73fd21f4a212e59574d17231"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a040121dc73fd21f4a212e59574d17231">ec_slave_request_state</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, <a class="el" href="globals_8h.html#a0e9c38c7520909d649fac451046dcde0">ec_slave_state_t</a> state)</td></tr>
<tr class="memdesc:a040121dc73fd21f4a212e59574d17231"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request a slave state and resets the error flag.  <a href="#a040121dc73fd21f4a212e59574d17231">More...</a><br /></td></tr>
<tr class="separator:a040121dc73fd21f4a212e59574d17231"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84cd41dd5ad5e78951374f0f13f0a41b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a84cd41dd5ad5e78951374f0f13f0a41b">ec_slave_fetch_sii_strings</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, const uint8_t *data, size_t data_size)</td></tr>
<tr class="memdesc:a84cd41dd5ad5e78951374f0f13f0a41b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fetches data from a STRING category.  <a href="#a84cd41dd5ad5e78951374f0f13f0a41b">More...</a><br /></td></tr>
<tr class="separator:a84cd41dd5ad5e78951374f0f13f0a41b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b77f41feca39ff647be54226d2ebde2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a9b77f41feca39ff647be54226d2ebde2">ec_slave_fetch_sii_general</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, const uint8_t *data, size_t data_size)</td></tr>
<tr class="memdesc:a9b77f41feca39ff647be54226d2ebde2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fetches data from a GENERAL category.  <a href="#a9b77f41feca39ff647be54226d2ebde2">More...</a><br /></td></tr>
<tr class="separator:a9b77f41feca39ff647be54226d2ebde2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90611548a89eeb3ce927ea0435a1fedc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a90611548a89eeb3ce927ea0435a1fedc">ec_slave_fetch_sii_syncs</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, const uint8_t *data, size_t data_size)</td></tr>
<tr class="memdesc:a90611548a89eeb3ce927ea0435a1fedc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fetches data from a SYNC MANAGER category.  <a href="#a90611548a89eeb3ce927ea0435a1fedc">More...</a><br /></td></tr>
<tr class="separator:a90611548a89eeb3ce927ea0435a1fedc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49e67c5363a9cf60622d9652c18be120"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a49e67c5363a9cf60622d9652c18be120">ec_slave_fetch_sii_pdos</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, const uint8_t *data, size_t data_size, <a class="el" href="group__ApplicationInterface.html#ga703c4e47384b3601e7605d6d910aaba1">ec_direction_t</a> dir)</td></tr>
<tr class="memdesc:a49e67c5363a9cf60622d9652c18be120"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fetches data from a [RT]xPDO category.  <a href="#a49e67c5363a9cf60622d9652c18be120">More...</a><br /></td></tr>
<tr class="separator:a49e67c5363a9cf60622d9652c18be120"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a1f1035888d33dcd86a5ca5a5f3acc2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structec__sync__t.html">ec_sync_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a0a1f1035888d33dcd86a5ca5a5f3acc2">ec_slave_get_sync</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, uint8_t sync_index)</td></tr>
<tr class="memdesc:a0a1f1035888d33dcd86a5ca5a5f3acc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the sync manager given an index.  <a href="#a0a1f1035888d33dcd86a5ca5a5f3acc2">More...</a><br /></td></tr>
<tr class="separator:a0a1f1035888d33dcd86a5ca5a5f3acc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71f0aaad16f5c15460df80b86887afbb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a71f0aaad16f5c15460df80b86887afbb">ec_slave_sdo_dict_info</a> (const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, unsigned int *sdo_count, unsigned int *entry_count)</td></tr>
<tr class="memdesc:a71f0aaad16f5c15460df80b86887afbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Counts the total number of SDOs and entries in the dictionary.  <a href="#a71f0aaad16f5c15460df80b86887afbb">More...</a><br /></td></tr>
<tr class="separator:a71f0aaad16f5c15460df80b86887afbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f675c490b5e91d155227e8c8d36bf76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sdo__entry_8h.html#a8da2c87733474a881be045798f0f7652">ec_sdo_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a3f675c490b5e91d155227e8c8d36bf76">ec_slave_get_sdo</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, uint16_t index)</td></tr>
<tr class="memdesc:a3f675c490b5e91d155227e8c8d36bf76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an SDO from the dictionary.  <a href="#a3f675c490b5e91d155227e8c8d36bf76">More...</a><br /></td></tr>
<tr class="separator:a3f675c490b5e91d155227e8c8d36bf76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3d7ea024c8cd9b7d5868a3fde80e977"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="sdo__entry_8h.html#a8da2c87733474a881be045798f0f7652">ec_sdo_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#aa3d7ea024c8cd9b7d5868a3fde80e977">ec_slave_get_sdo_const</a> (const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, uint16_t index)</td></tr>
<tr class="memdesc:aa3d7ea024c8cd9b7d5868a3fde80e977"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an SDO from the dictionary.  <a href="#aa3d7ea024c8cd9b7d5868a3fde80e977">More...</a><br /></td></tr>
<tr class="separator:aa3d7ea024c8cd9b7d5868a3fde80e977"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0d4badfbc7d6581aa60459bfccde017"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="sdo__entry_8h.html#a8da2c87733474a881be045798f0f7652">ec_sdo_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#af0d4badfbc7d6581aa60459bfccde017">ec_slave_get_sdo_by_pos_const</a> (const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, uint16_t sdo_position)</td></tr>
<tr class="memdesc:af0d4badfbc7d6581aa60459bfccde017"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an SDO from the dictionary, given its position in the list.  <a href="#af0d4badfbc7d6581aa60459bfccde017">More...</a><br /></td></tr>
<tr class="separator:af0d4badfbc7d6581aa60459bfccde017"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4677ac4a4c3ce12aba8f2bdee3a831e"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#ab4677ac4a4c3ce12aba8f2bdee3a831e">ec_slave_sdo_count</a> (const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave)</td></tr>
<tr class="memdesc:ab4677ac4a4c3ce12aba8f2bdee3a831e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of SDOs in the dictionary.  <a href="#ab4677ac4a4c3ce12aba8f2bdee3a831e">More...</a><br /></td></tr>
<tr class="separator:ab4677ac4a4c3ce12aba8f2bdee3a831e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52b38cde64ab24790c1a987fa2eac9f5"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structec__pdo__t.html">ec_pdo_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a52b38cde64ab24790c1a987fa2eac9f5">ec_slave_find_pdo</a> (const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, uint16_t index)</td></tr>
<tr class="memdesc:a52b38cde64ab24790c1a987fa2eac9f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds a mapped PDO.  <a href="#a52b38cde64ab24790c1a987fa2eac9f5">More...</a><br /></td></tr>
<tr class="separator:a52b38cde64ab24790c1a987fa2eac9f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a631c175754fd611998871d85cbf14b6a"><td class="memItemLeft" align="right" valign="top"><a id="a631c175754fd611998871d85cbf14b6a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a631c175754fd611998871d85cbf14b6a">ec_slave_find_names_for_pdo</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, <a class="el" href="structec__pdo__t.html">ec_pdo_t</a> *pdo)</td></tr>
<tr class="memdesc:a631c175754fd611998871d85cbf14b6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find name for a PDO and its entries. <br /></td></tr>
<tr class="separator:a631c175754fd611998871d85cbf14b6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a659775cbc8fdb6d41fe70eb9298d2780"><td class="memItemLeft" align="right" valign="top"><a id="a659775cbc8fdb6d41fe70eb9298d2780"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a659775cbc8fdb6d41fe70eb9298d2780">ec_slave_attach_pdo_names</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave)</td></tr>
<tr class="memdesc:a659775cbc8fdb6d41fe70eb9298d2780"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attach PDO names. <br /></td></tr>
<tr class="separator:a659775cbc8fdb6d41fe70eb9298d2780"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab122f3f8bc16dcfccaeb25c2068aaca5"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#ab122f3f8bc16dcfccaeb25c2068aaca5">ec_slave_get_previous_port</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, unsigned int port_index)</td></tr>
<tr class="memdesc:ab122f3f8bc16dcfccaeb25c2068aaca5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the previous connected port of a given port.  <a href="#ab122f3f8bc16dcfccaeb25c2068aaca5">More...</a><br /></td></tr>
<tr class="separator:ab122f3f8bc16dcfccaeb25c2068aaca5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cc63d4432c2e733cce13c64308ec83d"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a3cc63d4432c2e733cce13c64308ec83d">ec_slave_get_next_port</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, unsigned int port_index)</td></tr>
<tr class="memdesc:a3cc63d4432c2e733cce13c64308ec83d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the next connected port of a given port.  <a href="#a3cc63d4432c2e733cce13c64308ec83d">More...</a><br /></td></tr>
<tr class="separator:a3cc63d4432c2e733cce13c64308ec83d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51358929803cb80fa571a69c14fa4a3a"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a51358929803cb80fa571a69c14fa4a3a">ec_slave_calc_rtt_sum</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave)</td></tr>
<tr class="memdesc:a51358929803cb80fa571a69c14fa4a3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the sum of round-trip-times of connected ports 1-3.  <a href="#a51358929803cb80fa571a69c14fa4a3a">More...</a><br /></td></tr>
<tr class="separator:a51358929803cb80fa571a69c14fa4a3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a684715d5c3e0034bf2a8f6135e2f9c79"><td class="memItemLeft" align="right" valign="top"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a684715d5c3e0034bf2a8f6135e2f9c79">ec_slave_find_next_dc_slave</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave)</td></tr>
<tr class="memdesc:a684715d5c3e0034bf2a8f6135e2f9c79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds the next slave supporting DC delay measurement.  <a href="#a684715d5c3e0034bf2a8f6135e2f9c79">More...</a><br /></td></tr>
<tr class="separator:a684715d5c3e0034bf2a8f6135e2f9c79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0002f19044a330cebfd3106f443b55e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a0002f19044a330cebfd3106f443b55e0">ec_slave_calc_port_delays</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave)</td></tr>
<tr class="memdesc:a0002f19044a330cebfd3106f443b55e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates the port transmission delays.  <a href="#a0002f19044a330cebfd3106f443b55e0">More...</a><br /></td></tr>
<tr class="separator:a0002f19044a330cebfd3106f443b55e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4643eda07dbc1eb8afd997fed8d913ca"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a4643eda07dbc1eb8afd997fed8d913ca">ec_slave_calc_transmission_delays_rec</a> (<a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *slave, uint32_t *delay)</td></tr>
<tr class="memdesc:a4643eda07dbc1eb8afd997fed8d913ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Recursively calculates transmission delays.  <a href="#a4643eda07dbc1eb8afd997fed8d913ca">More...</a><br /></td></tr>
<tr class="separator:a4643eda07dbc1eb8afd997fed8d913ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a5bdb82dad7820f4bb46d5713c4247a54"><td class="memItemLeft" align="right" valign="top"><a id="a5bdb82dad7820f4bb46d5713c4247a54"></a>
const <a class="el" href="structec__code__msg__t.html">ec_code_msg_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slave_8c.html#a5bdb82dad7820f4bb46d5713c4247a54">al_status_messages</a> []</td></tr>
<tr class="memdesc:a5bdb82dad7820f4bb46d5713c4247a54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Application layer status messages. <br /></td></tr>
<tr class="separator:a5bdb82dad7820f4bb46d5713c4247a54"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>EtherCAT slave methods. </p>

<p class="definition">Definition in file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a471be4a7bc0d3a20a083157b72a41c67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a471be4a7bc0d3a20a083157b72a41c67">&#9670;&nbsp;</a></span>ec_slave_sii_string()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * ec_slave_sii_string </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Searches the string list for an index. </p>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">index</td><td>string index </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00568">568</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="aaa689baba7cb590080c92bcf5a851739"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa689baba7cb590080c92bcf5a851739">&#9670;&nbsp;</a></span>ec_slave_init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="globals_8h.html#ad1a2101422888687598d7e1a630c6343">ec_device_index_t</a>&#160;</td>
          <td class="paramname"><em>dev_idx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>ring_position</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>station_address</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Slave constructor. </p>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
    <tr><td class="paramname">dev_idx</td><td>Device index. </td></tr>
    <tr><td class="paramname">ring_position</td><td>ring position </td></tr>
    <tr><td class="paramname">station_address</td><td>station address to configure </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00062">62</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a35196c41a9d7b6a559c23d805690470d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35196c41a9d7b6a559c23d805690470d">&#9670;&nbsp;</a></span>ec_slave_clear()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_clear </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Slave destructor. </p>
<p>Clears and frees a slave object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00170">170</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a3c51205f3e69c449d29acf98f607f92d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c51205f3e69c449d29acf98f607f92d">&#9670;&nbsp;</a></span>ec_slave_clear_sync_managers()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_clear_sync_managers </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Clear the sync manager array. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00255">255</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a6aa74f1d2d7abaa28ae2e0c19a1aa176"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6aa74f1d2d7abaa28ae2e0c19a1aa176">&#9670;&nbsp;</a></span>ec_slave_set_state()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_set_state </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a0e9c38c7520909d649fac451046dcde0">ec_slave_state_t</a>&#160;</td>
          <td class="paramname"><em>new_state</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the application state of a slave. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">new_state</td><td>new application state </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00274">274</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a040121dc73fd21f4a212e59574d17231"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a040121dc73fd21f4a212e59574d17231">&#9670;&nbsp;</a></span>ec_slave_request_state()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_request_state </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a0e9c38c7520909d649fac451046dcde0">ec_slave_state_t</a>&#160;</td>
          <td class="paramname"><em>state</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Request a slave state and resets the error flag. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">state</td><td>new state </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00296">296</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a84cd41dd5ad5e78951374f0f13f0a41b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84cd41dd5ad5e78951374f0f13f0a41b">&#9670;&nbsp;</a></span>ec_slave_fetch_sii_strings()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_slave_fetch_sii_strings </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fetches data from a STRING category. </p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000043">Todo:</a></b></dt><dd>range checking </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">data</td><td>category data </td></tr>
    <tr><td class="paramname">data_size</td><td>number of bytes </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00312">312</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a9b77f41feca39ff647be54226d2ebde2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b77f41feca39ff647be54226d2ebde2">&#9670;&nbsp;</a></span>ec_slave_fetch_sii_general()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_slave_fetch_sii_general </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fetches data from a GENERAL category. </p>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">data</td><td>category data </td></tr>
    <tr><td class="paramname">data_size</td><td>size in bytes </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00368">368</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a90611548a89eeb3ce927ea0435a1fedc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90611548a89eeb3ce927ea0435a1fedc">&#9670;&nbsp;</a></span>ec_slave_fetch_sii_syncs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_slave_fetch_sii_syncs </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fetches data from a SYNC MANAGER category. </p>
<p>Appends the sync managers described in the category to the existing ones.</p>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
    <tr><td class="paramname">data</td><td>Category data. </td></tr>
    <tr><td class="paramname">data_size</td><td>Number of bytes. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00419">419</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a49e67c5363a9cf60622d9652c18be120"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a49e67c5363a9cf60622d9652c18be120">&#9670;&nbsp;</a></span>ec_slave_fetch_sii_pdos()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_slave_fetch_sii_pdos </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>data_size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga703c4e47384b3601e7605d6d910aaba1">ec_direction_t</a>&#160;</td>
          <td class="paramname"><em>dir</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Fetches data from a [RT]xPDO category. </p>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">data</td><td>category data </td></tr>
    <tr><td class="paramname">data_size</td><td>number of bytes </td></tr>
    <tr><td class="paramname">dir</td><td>PDO direction. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00485">485</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a0a1f1035888d33dcd86a5ca5a5f3acc2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a1f1035888d33dcd86a5ca5a5f3acc2">&#9670;&nbsp;</a></span>ec_slave_get_sync()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structec__sync__t.html">ec_sync_t</a>* ec_slave_get_sync </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>sync_index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the sync manager given an index. </p>
<dl class="section return"><dt>Returns</dt><dd>pointer to sync manager, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
    <tr><td class="paramname">sync_index</td><td>Sync manager index. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00590">590</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a71f0aaad16f5c15460df80b86887afbb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71f0aaad16f5c15460df80b86887afbb">&#9670;&nbsp;</a></span>ec_slave_sdo_dict_info()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_sdo_dict_info </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int *&#160;</td>
          <td class="paramname"><em>sdo_count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int *&#160;</td>
          <td class="paramname"><em>entry_count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Counts the total number of SDOs and entries in the dictionary. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">sdo_count</td><td>number of SDOs </td></tr>
    <tr><td class="paramname">entry_count</td><td>total number of entries </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00608">608</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a3f675c490b5e91d155227e8c8d36bf76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f675c490b5e91d155227e8c8d36bf76">&#9670;&nbsp;</a></span>ec_slave_get_sdo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="sdo__entry_8h.html#a8da2c87733474a881be045798f0f7652">ec_sdo_t</a>* ec_slave_get_sdo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get an SDO from the dictionary. </p>
<dl class="section return"><dt>Returns</dt><dd>The desired SDO, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">index</td><td>SDO index </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00636">636</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="aa3d7ea024c8cd9b7d5868a3fde80e977"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3d7ea024c8cd9b7d5868a3fde80e977">&#9670;&nbsp;</a></span>ec_slave_get_sdo_const()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="sdo__entry_8h.html#a8da2c87733474a881be045798f0f7652">ec_sdo_t</a>* ec_slave_get_sdo_const </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get an SDO from the dictionary. </p>
<p>const version.</p>
<dl class="section return"><dt>Returns</dt><dd>The desired SDO, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave </td></tr>
    <tr><td class="paramname">index</td><td>SDO index </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00662">662</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="af0d4badfbc7d6581aa60459bfccde017"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0d4badfbc7d6581aa60459bfccde017">&#9670;&nbsp;</a></span>ec_slave_get_sdo_by_pos_const()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="sdo__entry_8h.html#a8da2c87733474a881be045798f0f7652">ec_sdo_t</a>* ec_slave_get_sdo_by_pos_const </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>sdo_position</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get an SDO from the dictionary, given its position in the list. </p>
<dl class="section return"><dt>Returns</dt><dd>The desired SDO, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
    <tr><td class="paramname">sdo_position</td><td>SDO list position. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00684">684</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="ab4677ac4a4c3ce12aba8f2bdee3a831e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4677ac4a4c3ce12aba8f2bdee3a831e">&#9670;&nbsp;</a></span>ec_slave_sdo_count()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t ec_slave_sdo_count </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of SDOs in the dictionary. </p>
<dl class="section return"><dt>Returns</dt><dd>SDO count. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00706">706</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a52b38cde64ab24790c1a987fa2eac9f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52b38cde64ab24790c1a987fa2eac9f5">&#9670;&nbsp;</a></span>ec_slave_find_pdo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structec__pdo__t.html">ec_pdo_t</a>* ec_slave_find_pdo </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finds a mapped PDO. </p>
<dl class="section return"><dt>Returns</dt><dd>The desired PDO object, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>Slave. </td></tr>
    <tr><td class="paramname">index</td><td>PDO index to find. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00725">725</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="ab122f3f8bc16dcfccaeb25c2068aaca5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab122f3f8bc16dcfccaeb25c2068aaca5">&#9670;&nbsp;</a></span>ec_slave_get_previous_port()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int ec_slave_get_previous_port </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>port_index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the previous connected port of a given port. </p>
<dl class="section return"><dt>Returns</dt><dd>Port index. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
    <tr><td class="paramname">port_index</td><td>Port index. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00803">803</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a3cc63d4432c2e733cce13c64308ec83d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3cc63d4432c2e733cce13c64308ec83d">&#9670;&nbsp;</a></span>ec_slave_get_next_port()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int ec_slave_get_next_port </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>port_index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the next connected port of a given port. </p>
<dl class="section return"><dt>Returns</dt><dd>Port index. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
    <tr><td class="paramname">port_index</td><td>Port index. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00833">833</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a51358929803cb80fa571a69c14fa4a3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51358929803cb80fa571a69c14fa4a3a">&#9670;&nbsp;</a></span>ec_slave_calc_rtt_sum()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t ec_slave_calc_rtt_sum </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Calculates the sum of round-trip-times of connected ports 1-3. </p>
<dl class="section return"><dt>Returns</dt><dd>Round-trip-time in ns. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00863">863</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a684715d5c3e0034bf2a8f6135e2f9c79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a684715d5c3e0034bf2a8f6135e2f9c79">&#9670;&nbsp;</a></span>ec_slave_find_next_dc_slave()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a>* ec_slave_find_next_dc_slave </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finds the next slave supporting DC delay measurement. </p>
<dl class="section return"><dt>Returns</dt><dd>Next DC slave, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00889">889</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a0002f19044a330cebfd3106f443b55e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0002f19044a330cebfd3106f443b55e0">&#9670;&nbsp;</a></span>ec_slave_calc_port_delays()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_calc_port_delays </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Calculates the port transmission delays. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>EtherCAT slave. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00922">922</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
<a id="a4643eda07dbc1eb8afd997fed8d913ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4643eda07dbc1eb8afd997fed8d913ca">&#9670;&nbsp;</a></span>ec_slave_calc_transmission_delays_rec()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_slave_calc_transmission_delays_rec </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td>
          <td class="paramname"><em>slave</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>delay</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Recursively calculates transmission delays. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">slave</td><td>Current slave. </td></tr>
    <tr><td class="paramname">delay</td><td>Sum of delays. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="slave_8c_source.html#l00968">968</a> of file <a class="el" href="slave_8c_source.html">slave.c</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_c1346cf4828efdd0d2baf0d391d01b77.html">master</a></li><li class="navelem"><a class="el" href="slave_8c.html">slave.c</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
